#include "MallardDuck.h"
#include "ModelDuck.h"
#include "FlyRocketPower.h"

#include <iostream>

void testMallardDuck(){
    std::cout << "Enter testMallardDuck()" << std::endl;
	MallardDuck mallardDuck;
	mallardDuck.display();
	mallardDuck.swim();
	mallardDuck.performFly();
	mallardDuck.performQuack();
    std::cout << "Exit testMallardDuck()" << std::endl;
}

void testModelDuck(){
    std::cout << "Enter testModelDuck()" << std::endl;
	ModelDuck modelDuck;
	modelDuck.display();
	modelDuck.swim();
	modelDuck.performFly();
	modelDuck.performQuack();
    modelDuck.setFlyBehavior(new FlyRocketPower());
    modelDuck.performFly();
    std::cout << "Exit testModelDuck()" << std::endl;
}

int main(int argc, char **argv){
	testMallardDuck();
    testModelDuck();

	getchar();
	return 0;
}